Regresi Linear Berganda¶
Pengertian¶
Regresi Berganda adalah model regresi atau prediksi yang melibatkan lebih dari satu variabel bebas. Istilah regresi berganda dapat disebut sebagai istilah multiple regression. Kata multiple berarti jamak atau lebih dari satu variabel
Analisis regresi linier berganda adalah hubungan secara linear antara dua atau lebih variabel independen (X1, X2,….Xn) dengan variabel dependen (Y). Analisis ini untuk mengetahui arah hubungan antara variabel independen dengan variabel dependen apakah masing-masing variabel independen berhubungan positif atau negatif dan untuk memprediksi nilai dari variabel dependen apabila nilai variabel independen mengalami kenaikan atau penurunan. Data yang digunakan biasanya berskala interval atau rasio.
Kegunaan Analisis Regresi Linear Berganda¶
Analisis Regresi Linear Berganda digunakan untuk mengukur pengaruh antara lebih dari satu variabel prediktor (variabel bebas) terhadap variabel terikat.
Rumus $$ Y = a + b_1X_1+b_2X_2+....+b_nX_n $$ Keterangan :
Y = variabel terikat
a = konstanta
$b_1b_2$ = koefisien regresi
$X_1X_2$ = variabel bebas
Untuk menghitung Rumus Regresi Linear Berganda $b_1,b_2, $dan a¶
$$ b_1 = \frac{(\sum x_2^2).(\sum x_1y)- (\sum x_1x_2).(\sum x_2y)}{(\sum x_1^2).(\sum x_2^2)- (\sum x_1x_2)^2} $$
$$ b_2 = \frac{(\sum x_1^2).(\sum x_1y)- (\sum x_1x_2).(\sum x_1y)}{(\sum x_1^2).(\sum x_2^2)- (\sum x_1x_2)^2} $$
$$ a = \frac {\sum Y}{n}- b_1 . \frac{(\sum X_1)}{n} -b_2.\frac{(\sum X_2)}{n} $$
Contoh Kasus Untuk menganalisis Regresi Linear berganda dengan 2 Fitur¶
Dalam Kasus berikut ,menganalisa regresi linear berganda dengan 2 fitur sebagai berikut menggunakan Excel dengan cara Manual
X1 | X2 | Y | X1^2 | X2^2 | X1 x X2 | X1 x Y | X2 x Y | |
---|---|---|---|---|---|---|---|---|
3 | 3 | 8 | 9 | 9 | 9 | 24 | 24 | |
2 | 4 | 8 | 4 | 16 | 8 | 16 | 32 | |
3 | 1 | 7 | 9 | 1 | 3 | 21 | 7 | |
4 | 5 | 14 | 16 | 25 | 20 | 56 | 70 | |
Total$(\sum)$ | 12 | 13 | 37 | 38 | 51 | 40 | 117 | 133 |
Untuk mengurangi Sistem eror bisa Melakukan Normalisasi terlebih dahulu
Pada Total $\sum X_1^2/4$ dan $\sum X_2^2/4$
Implementasi Kasus Regresi Linear Berganda 2 Fitur ke Code Python¶
Pertama dengan meng-import numpy dan from sklearn.linear_model import LinearRegression. Setelah itu bisa memasukkan data terlebih dahulu pada fitur X dan Y nya
import numpy as np from sklearn.linear_model import LinearRegression X = np.array([[3,3],[2,4],[3,1],[4,5]]) y = np.array([8, 8, 7, 14]) X
array([[3, 3], [2, 4], [3, 1], [4, 5]])
reg = LinearRegression().fit(X,y) reg.score(X,y)
0.9600886917960089
a = reg.intercept_ a
-1.8181818181818183
b2 = reg.coef_[1] b1 = reg.coef_[0] x1 = 6 x2 = 2 reg.coef_
array([2.40909091, 1.18181818])
y = (b1*x1) + (b2*x2)+a y
15.000000000000002
Sudah didapatkan Y yang dicari menggunakan program dari python
Sistem yang digunakan tersebut sudah termasuk normalisasi dan sudah paling sedikit sistem erornya
Pada Contoh ke 2 menggunakan 2 fitur juga, berikut
import numpy as np from sklearn.linear_model import LinearRegression X = np.array([[2,3],[4,2],[5,3],[7,1]]) y = np.array([10, 12, 16, 16]) X
array([[2, 3], [4, 2], [5, 3], [7, 1]])
reg = LinearRegression().fit(X,y) reg.score(X,y)
1.0
a = reg.intercept_ a
7.105427357601002e-15
b2 = reg.coef_[1] b1 = reg.coef_[0] x1 = 6 x2 = 2 reg.coef_
array([2., 2.])
y = (b1*x1) + (b2*x2)+a y
16.0
Implementasi Kasus Regresi Linear Berganda 3 Fitur ke Code Python¶
Menggunakan import numpy as np dan from sklearn.linear_model import LinearRegression
import numpy as np from sklearn.linear_model import LinearRegression X = np.array([[3,3,2],[2,4,1],[3,1,2],[4,5,3]]) y = np.array([16, 14, 12, 24]) X
array([[3, 3, 2], [2, 4, 1], [3, 1, 2], [4, 5, 3]])
reg = LinearRegression().fit(X,y) reg.score(X,y)
1.0
a = reg.intercept_ a
3.552713678800501e-15
b3 = reg.coef_[2] b2 = reg.coef_[1] b1 = reg.coef_[0] x1 = 7 x2 = 5 x3 = 4 reg.coef_
array([3., 3., 3.])
y = (b1*x1) + (b2*x2)+ (b3*x3)+a y
48.0
Y yang didapatkan dari program di atas adalah 48 Dengan 3 Fitur
Contoh 3 Fitur yang lain
import numpy as np from sklearn.linear_model import LinearRegression X = np.array([[3,2,1],[2,3,2],[3,3,2],[4,6,3]]) y = np.array([12, 15, 19, 22]) X
array([[3, 2, 1], [2, 3, 2], [3, 3, 2], [4, 6, 3]])
reg = LinearRegression().fit(X,y) reg.score(X,y)
1.0
a = reg.intercept_ a
-3.000000000000007
b3 = reg.coef_[2] b2 = reg.coef_[1] b1 = reg.coef_[0] x1 = 7 x2 = 5 x3 = 4 reg.coef_
array([ 4., -4., 11.])
y = (b1*x1) + (b2*x2)+ (b3*x3)+a y
49.0
Y yang sudah didapat adalah 49 dengan 3 Fitur
Implementasi Kasus Regresi Linear Berganda 4 Fitur ke Code Python¶
Menggunakan import numpy as np dan from sklearn.linear_model import LinearRegression
import numpy as np from sklearn.linear_model import LinearRegression X = np.array([[3,2,1,2],[2,3,2,1],[3,3,2,4],[4,6,3,2],[3,2,5,1]]) y = np.array([14, 17, 19, 24,27]) X
array([[3, 2, 1, 2], [2, 3, 2, 1], [3, 3, 2, 4], [4, 6, 3, 2], [3, 2, 5, 1]])
reg = LinearRegression().fit(X,y) reg.score(X,y)
1.0
a = reg.intercept_ a
6.6304347826087024
b4 = reg.coef_[3] b3 = reg.coef_[2] b2 = reg.coef_[1] b1 = reg.coef_[0] x1 = 7 x2 = 5 x3 = 4 x4 = 1 reg.coef_
array([0.56521739, 0.67391304, 3.36956522, 0.47826087])
y = (b1*x1) + (b2*x2)+ (b3*x3)+(b4*x4)+a y
27.913043478260857
Y yang sudah didapat adalah 27,913 dengan 4 Fitur